In the event of a critical error in a computer system, the operating system may initiate or require a restart. In such case, write data buffered in a cache memory may not be written or committed to a target disk if the system initiates a restart or freezes to require a restart before the write data is flushed from the cache. This loss of uncommitted data in the cache is a common cause of data corruption, especially if the lost uncommitted data comprises operating system configurations settings. Data corruption may also occur if data has only been partially written from the cache to the disk.
Certain recovery solutions use disk journaling to recover to a previous system state. This recovered system state may be at a point-in-time before the lost write data was written to cache, thereby avoiding any errors or corruption from the lost data. Disk journaling involves buffering writes to allow recovery as of the time of the last buffered write: